The present invention relates to digital computer systems, and more particularly relates to control of a computer input/output device.
A computer usually contains valuable, confidential or otherwise restricted information in its memory and/or external storage devices, so it is accordingly desirable to control access to this information to prevent unauthorized use. Such controlled access to computer data may be realized either by providing physical (hardware) means for preventing the use of I/O devices on a computer system, or by providing software means for restricting access, such as a routine that confirms a user's knowledge of a password before granting that user access to information contained in the computer system.
It is also necessary to restrict user input to a computer from a keyboard is when the computer is functioning as a "network server", coordinating communication between multiple computers, terminals and/or other devices by a local area network (LAN). When functioning as a network server, a computer is dedicated at the execution of network software, in order to provide efficient, uninterrupted service to numerous network devices. If the keyboard of a network server is not disabled when the network operator is not present, an unrestricted user could potentially gain access to normally restricted files, or cause network communication to be disrupted.
One commonly-used method for restricting user interaction with a computer is to provide a "password lock" function in the keyboard or auxiliary device controller which can prevent communication between the external devices and the computer. Typically, when a controller is in "password lock mode", no communication between external input devices and the computer is allowed unless a password is first entered to remove the controller from "password lock mode". One type of computer having this password lock function is the IBM PS/2 desktop models. If such a function is implemented in a peripheral device controller of a computer, however, it may prevent proper execution of software which requires communication with the locked-out external devices. For example, operating system software may require information about which devices are present in a computer system in order to determine the current system configuration. Other software that requires application-specific hardware, such as a "mouse", a digitizing tablet, or some other specialized data acquisition device, may not function properly if it cannot determine whether such devices are actually present in the system.
It is accordingly an object of present invention to provide improved functions for an auxiliary device controller, particularly a mode of operation which selectively allows or restricts communication between a computer and auxiliary devices. Another object is to provide an improved lock-out mode of operation for a computer, but nevertheless allow selected functions to be performed while in this lock-out mode.
Typically, the interface between the CPU of a computer and a peripheral I/O device is implemented using a standard controller or microprocessor device for the buffering, translation, or formatting of data as it is exchanged between the CPU and peripheral devices. One such controller device is a part number 8042, Universal Peripheral Interface 8-bit Slave Microcontroller, manufactured by Intel Corporation, Santa Clara, CA. This microprocessor or microcontroller includes a ROM or EPROM storage area (e.g., two-kilobyte) for holding customized machine language instruction routines that enable the controller to support various commands that it can receive from either the controlled device (i.e. a keyboard, a mouse or the like) or from the main computer processor (CPU). That is, in typical desk-top computers, the controller device (such as the 8042 device) is itself a processor, executing the machine language instructions to define a command sequence, although the same functions could be performed by a state machine or the like. Use of the 8042 type of device is much less costly and easier to design, however.